namespace ext.tree
{
	using System;
	using System.Runtime.CompilerServices;
	using System.Html;
	using System.Collections;
	
	
	/// <definedin>src\widgets\tree\TreeDropZone.js</definedin>
	[ScriptName("TreeDropZone")]
	[ScriptNamespace("Ext.tree")]
	[Imported()]
	public partial class TreeDropZone : ext.dd.DropZone
	{
		
		#region Constructors
		/// <summary>Constructor</summary>
		/// <param name="tree">The {@link Ext.tree.TreePanel} for which to enable dropping</param>
		/// <param name="config"></param>
		public TreeDropZone(string tree, ext.tree.TreeDropZone_Configuration config)
		{
		}
		
		/// <summary>Constructor</summary>
		/// <param name="tree">The {@link Ext.tree.TreePanel} for which to enable dropping</param>
		/// <param name="config"></param>
		public TreeDropZone(System.Html.Element tree, ext.tree.TreeDropZone_Configuration config)
		{
		}
		
		/// <summary>Constructor</summary>
		/// <param name="tree">The {@link Ext.tree.TreePanel} for which to enable dropping</param>
		/// <param name="config"></param>
		public TreeDropZone(ext.Element tree, ext.tree.TreeDropZone_Configuration config)
		{
		}
		
		/// <summary>Constructor</summary>
		public TreeDropZone()
		{
		}
		#endregion
		
		#region Fields
		/// <summary>
		/// Allow inserting a dragged node between an expanded parent node and its first child that will become a
		/// sibling of the parent when dropped (defaults to false)
		/// </summary>
		/// <definedin>src\widgets\tree\TreeDropZone.js</definedin>
		[ScriptName("allowParentInsert")]
		public bool AllowParentInsert;
		
		/// <summary>True if drops on the tree container (outside of a specific tree node) are allowed (defaults to false)</summary>
		/// <definedin>src\widgets\tree\TreeDropZone.js</definedin>
		[ScriptName("allowContainerDrop")]
		public string AllowContainerDrop;
		
		/// <summary>True if the tree should only allow append drops (use for trees which are sorted, defaults to false)</summary>
		/// <definedin>src\widgets\tree\TreeDropZone.js</definedin>
		[ScriptName("appendOnly")]
		public string AppendOnly;
		
		/// <summary>
		/// A named drag drop group to which this object belongs. If a group is specified, then this object will only
		/// interact with other drag drop objects in the same group (defaults to &apos;TreeDD&apos;).
		/// </summary>
		/// <definedin>src\widgets\tree\TreeDropZone.js</definedin>
		[ScriptName("ddGroup")]
		public string DdGroup;
		
		/// <summary>
		/// The delay in milliseconds to wait before expanding a target tree node while dragging a droppable node
		/// over the target (defaults to 1000)
		/// </summary>
		/// <definedin>src\widgets\tree\TreeDropZone.js</definedin>
		[ScriptName("expandDelay")]
		public string ExpandDelay;
		#endregion
	}
}
